[INFO] fetching crate loro-internal 0.2.2...
[INFO] checking loro-internal-0.2.2 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate loro-internal 0.2.2 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate loro-internal 0.2.2 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate loro-internal 0.2.2
[INFO] finished tweaking crates.io crate loro-internal 0.2.2
[INFO] tweaked toml for crates.io crate loro-internal 0.2.2 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate crates.io crate loro-internal 0.2.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded enum-as-inner v0.6.0
[INFO] [stderr]   Downloaded postcard v1.0.2
[INFO] [stderr]   Downloaded thousands v0.2.0
[INFO] [stderr]   Downloaded mintex v0.1.2
[INFO] [stderr]   Downloaded dhat v0.3.2
[INFO] [stderr]   Downloaded generic-btree v0.8.2
[INFO] [stderr]   Downloaded arbtest v0.2.0
[INFO] [stderr]   Downloaded derive_arbitrary v1.3.1
[INFO] [stderr]   Downloaded arbitrary v1.3.0
[INFO] [stderr]   Downloaded ouroboros v0.15.6
[INFO] [stderr]   Downloaded gimli v0.27.0
[INFO] [stderr]   Downloaded ouroboros_macro v0.15.6
[INFO] [stderr]   Downloaded enum_dispatch v0.3.11
[INFO] [stderr]   Downloaded rayon-core v1.10.1
[INFO] [stderr]   Downloaded object v0.30.2
[INFO] [stderr]   Downloaded loro-common v0.1.0
[INFO] [stderr]   Downloaded loro-preload v0.1.0
[INFO] [stderr]   Downloaded crdt-list v0.4.0
[INFO] [stderr]   Downloaded arref v0.1.0
[INFO] [stderr]   Downloaded serde_columnar_derive v0.3.2
[INFO] [stderr]   Downloaded debug-log v0.2.2
[INFO] [stderr]   Downloaded append-only-bytes v0.1.12
[INFO] [stderr]   Downloaded loro-thunderdome v0.6.2
[INFO] [stderr]   Downloaded serde_columnar v0.3.3
[INFO] [stderr]   Downloaded loro-rle v0.1.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3b74b4fe81f1c68e8e85f728400e8650e538acc15fee2c67e2a018115f1823df
[INFO] running `Command { std: "docker" "start" "-a" "3b74b4fe81f1c68e8e85f728400e8650e538acc15fee2c67e2a018115f1823df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3b74b4fe81f1c68e8e85f728400e8650e538acc15fee2c67e2a018115f1823df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3b74b4fe81f1c68e8e85f728400e8650e538acc15fee2c67e2a018115f1823df", kill_on_drop: false }`
[INFO] [stdout] 3b74b4fe81f1c68e8e85f728400e8650e538acc15fee2c67e2a018115f1823df
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a27f21ac45077ec5b92d238bdb45d127919ef31f04ca177736c575a5e87026f5
[INFO] running `Command { std: "docker" "start" "-a" "a27f21ac45077ec5b92d238bdb45d127919ef31f04ca177736c575a5e87026f5", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.29
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling serde v1.0.171
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling semver v1.0.16
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling proc-macro2 v1.0.67
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]    Compiling num-bigint v0.4.3
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]     Checking spin v0.9.4
[INFO] [stderr]    Compiling crossbeam-utils v0.8.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.6
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.13
[INFO] [stderr]    Compiling thiserror v1.0.43
[INFO] [stderr]     Checking hash32 v0.2.1
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling serde_json v1.0.91
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling Inflector v0.11.4
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking siphasher v0.3.10
[INFO] [stderr]     Checking ryu v1.0.12
[INFO] [stderr]     Checking arref v0.1.0
[INFO] [stderr]     Checking itoa v1.0.5
[INFO] [stderr]     Checking phf_shared v0.10.0
[INFO] [stderr]     Checking crdt-list v0.4.0
[INFO] [stderr]     Checking itertools v0.11.0
[INFO] [stderr]     Checking miniz_oxide v0.6.2
[INFO] [stderr]    Compiling backtrace v0.3.67
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]     Checking debug-log v0.2.2
[INFO] [stderr]    Compiling syn v2.0.25
[INFO] [stderr]    Compiling sys-info v0.9.1
[INFO] [stderr]     Checking precomputed-hash v0.1.1
[INFO] [stderr]     Checking append-only-bytes v0.1.12
[INFO] [stderr]     Checking cobs v0.2.3
[INFO] [stderr]    Compiling rayon-core v1.10.1
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking gimli v0.27.0
[INFO] [stderr]     Checking bumpalo v3.11.1
[INFO] [stderr]     Checking new_debug_unreachable v1.0.4
[INFO] [stderr]     Checking crossbeam-deque v0.8.2
[INFO] [stderr]    Compiling heapless v0.7.16
[INFO] [stderr]     Checking object v0.30.2
[INFO] [stderr]     Checking crossbeam-channel v0.5.6
[INFO] [stderr]     Checking getrandom v0.2.10
[INFO] [stderr]     Checking num_cpus v1.15.0
[INFO] [stderr]    Compiling im v15.1.0
[INFO] [stderr]     Checking regex-syntax v0.6.28
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking os_str_bytes v6.4.1
[INFO] [stderr]     Checking ciborium-io v0.2.0
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]     Checking half v1.8.2
[INFO] [stderr]     Checking rustc-demangle v0.1.21
[INFO] [stderr]     Checking fastrand v1.8.0
[INFO] [stderr]     Checking plotters-backend v0.3.4
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking num-complex v0.4.2
[INFO] [stderr]     Checking tempfile v3.3.0
[INFO] [stderr]     Checking ciborium-ll v0.2.0
[INFO] [stderr]     Checking plotters-svg v0.3.3
[INFO] [stderr]     Checking rand_xoshiro v0.6.0
[INFO] [stderr]     Checking wait-timeout v0.2.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking bitmaps v2.1.0
[INFO] [stderr]     Checking tracing-core v0.1.30
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]     Checking loro-thunderdome v0.6.2
[INFO] [stderr]     Checking textwrap v0.16.0
[INFO] [stderr]     Checking bytecount v0.6.3
[INFO] [stderr]     Checking bytes v1.4.0
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking papergrid v0.7.1
[INFO] [stderr]     Checking rusty-fork v0.3.0
[INFO] [stderr]     Checking walkdir v2.3.2
[INFO] [stderr]     Checking clap v3.2.23
[INFO] [stderr]     Checking mintex v0.1.2
[INFO] [stderr]     Checking rayon v1.6.1
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking plotters v0.3.4
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand_xorshift v0.3.0
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking termcolor v1.2.0
[INFO] [stderr]     Checking quick-error v2.0.1
[INFO] [stderr]     Checking sized-chunks v0.6.5
[INFO] [stderr]     Checking thousands v0.2.0
[INFO] [stderr]     Checking flate2 v1.0.25
[INFO] [stderr]     Checking regex v1.7.1
[INFO] [stderr]     Checking proptest v1.0.0
[INFO] [stderr]     Checking addr2line v0.19.0
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking num v0.4.0
[INFO] [stderr]    Compiling darling_core v0.20.3
[INFO] [stderr]     Checking color-backtrace v0.5.1
[INFO] [stderr]    Compiling serde_derive v1.0.171
[INFO] [stderr]    Compiling thiserror-impl v1.0.43
[INFO] [stderr]    Compiling derive_arbitrary v1.3.1
[INFO] [stderr]    Compiling enum-as-inner v0.6.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling ouroboros_macro v0.15.6
[INFO] [stderr]    Compiling enum-as-inner v0.5.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.23
[INFO] [stderr]    Compiling tabled_derive v0.5.0
[INFO] [stderr]    Compiling enum_dispatch v0.3.11
[INFO] [stderr]    Compiling ctor v0.1.26
[INFO] [stderr]     Checking arbitrary v1.3.0
[INFO] [stderr]    Compiling darling_macro v0.20.3
[INFO] [stderr]     Checking arbtest v0.2.0
[INFO] [stderr]    Compiling darling v0.20.3
[INFO] [stderr]    Compiling serde_columnar_derive v0.3.2
[INFO] [stderr]     Checking tabled v0.10.0
[INFO] [stderr]    Compiling proptest-derive v0.3.0
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]     Checking ouroboros v0.15.6
[INFO] [stderr]     Checking smallvec v1.10.0
[INFO] [stderr]     Checking ciborium v0.2.0
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking string_cache v0.8.7
[INFO] [stderr]     Checking postcard v1.0.2
[INFO] [stderr]     Checking loro-rle v0.1.0
[INFO] [stderr]     Checking generic-btree v0.8.2
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking dhat v0.3.2
[INFO] [stderr]     Checking criterion v0.4.0
[INFO] [stderr]     Checking serde_columnar v0.3.3
[INFO] [stderr]     Checking loro-common v0.1.0
[INFO] [stderr]     Checking loro-preload v0.1.0
[INFO] [stderr]     Checking loro-internal v0.2.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `VersionVector`, `event::Diff`
[INFO] [stdout]   --> src/container.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 | use crate::{event::Diff, VersionVector};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::oplog::OpLog`
[INFO] [stdout]   --> src/container.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 | use super::oplog::OpLog;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VersionVector`, `event::Diff`
[INFO] [stdout]   --> src/container.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 | use crate::{event::Diff, VersionVector};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::oplog::OpLog`
[INFO] [stdout]   --> src/container.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 | use super::oplog::OpLog;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_children_recursively` is never used
[INFO] [stdout]    --> src/diff_calc/tree.rs:362:8
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub(crate) trait TreeDeletedSetTrait {
[INFO] [stdout]     |                  ------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 362 |     fn get_children_recursively(&self, target: TreeID) -> Vec<TreeID> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_lamport_from_counter` is never used
[INFO] [stdout]   --> src/dag.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) trait DagNode: HasLamport + HasId + HasLength + Debug + Sliceable {
[INFO] [stdout]    |                  ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn get_lamport_from_counter(&self, c: Counter) -> Lamport {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `frontier` is never used
[INFO] [stdout]   --> src/dag.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub(crate) trait Dag {
[INFO] [stdout]    |                  --- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 54 |     fn frontier(&self) -> &[ID];
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_vv`, `iter`, `iter_with_vv`, and `mermaid` are never used
[INFO] [stdout]   --> src/dag.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) trait DagUtils: Dag {
[INFO] [stdout]    |                  -------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn get_vv(&self, id: ID) -> VersionVector;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn iter(&self) -> DagIterator<'_, Self::Node>
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     fn iter_with_vv(&self) -> DagIteratorVV<'_, Self::Node>
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn mermaid(&self) -> String
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_version_vector` is never used
[INFO] [stdout]    --> src/dag.rs:191:4
[INFO] [stdout]     |
[INFO] [stdout] 191 | fn get_version_vector<'a, Get, D>(get: &'a Get, id: ID) -> VersionVector
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_dag_with_vv` is never used
[INFO] [stdout]   --> src/dag/iter.rs:26:15
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub(crate) fn iter_dag_with_vv<T, D: Dag<Node = T>>(dag: &D) -> DagIteratorVV<'_, T> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_dag` is never used
[INFO] [stdout]   --> src/dag/iter.rs:34:15
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub(crate) fn iter_dag<T>(dag: &dyn Dag<Node = T>) -> DagIterator<'_, T> {
[INFO] [stdout]    |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BreakPoints` is never constructed
[INFO] [stdout]  --> src/dag/mermaid.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct BreakPoints {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Output` is never constructed
[INFO] [stdout]   --> src/dag/mermaid.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct Output {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_str` is never used
[INFO] [stdout]   --> src/dag/mermaid.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn to_str(output: Output) -> String {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `break_points_to_output` is never used
[INFO] [stdout]   --> src/dag/mermaid.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn break_points_to_output(input: BreakPoints) -> Output {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_dag_break_points` is never used
[INFO] [stdout]    --> src/dag/mermaid.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn get_dag_break_points<T: DagNode>(dag: &impl Dag<Node = T>) -> BreakPoints {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dag_to_mermaid` is never used
[INFO] [stdout]    --> src/dag/mermaid.rs:143:15
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub(crate) fn dag_to_mermaid<T: DagNode>(dag: &impl Dag<Node = T>) -> String {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]   --> src/utils/bitmap.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl BitMap {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get(&self, index: usize) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `bench_utils`
[INFO] [stdout]  --> examples/encoding.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bench_utils::TextAction;
[INFO] [stdout]   |     ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `bench_utils`
[INFO] [stdout]  --> examples/pending.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bench_utils::TextAction;
[INFO] [stdout]   |     ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `bench_utils`
[INFO] [stdout]  --> examples/automerge_x100.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use bench_utils::TextAction;
[INFO] [stdout]   |         ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `bench_utils`
[INFO] [stdout]  --> examples/obs.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bench_utils::TextAction;
[INFO] [stdout]   |     ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `bench_utils`
[INFO] [stdout]  --> examples/encoding_refactored.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bench_utils::TextAction;
[INFO] [stdout]   |     ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `bench_utils`
[INFO] [stdout]  --> examples/encoding.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let actions = bench_utils::get_automerge_actions();
[INFO] [stdout]   |                   ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `bench_utils`
[INFO] [stdout]  --> examples/encoding_parallel.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bench_utils::{get_automerge_actions, TextAction};
[INFO] [stdout]   |     ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `loro-internal` (example "encoding") due to 3 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `bench_utils`
[INFO] [stdout]  --> examples/pending.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let actions = bench_utils::get_automerge_actions();
[INFO] [stdout]   |                   ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `bench_utils`
[INFO] [stdout]  --> examples/obs.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let actions = bench_utils::get_automerge_actions();
[INFO] [stdout]   |                   ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `bench_utils`
[INFO] [stdout]   --> examples/encoding_refactored.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let actions = bench_utils::get_automerge_actions();
[INFO] [stdout]    |                   ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `loro-internal` (example "encoding_parallel") due to 2 previous errors
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `bench_utils`
[INFO] [stdout]  --> examples/automerge_x100.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let actions = bench_utils::get_automerge_actions();
[INFO] [stdout]   |                   ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `bench_utils`
[INFO] [stdout]   --> examples/encoding_refactored.rs:59:19
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let actions = bench_utils::get_automerge_actions();
[INFO] [stdout]    |                   ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `bench_utils`
[INFO] [stdout]   --> examples/encoding_refactored.rs:85:19
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let actions = bench_utils::get_automerge_actions();
[INFO] [stdout]    |                   ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `loro-internal` (example "obs") due to 3 previous errors
[INFO] [stderr] error: could not compile `loro-internal` (example "pending") due to 3 previous errors
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `loro-internal` (example "encoding_refactored") due to 5 previous errors
[INFO] [stderr] error: could not compile `loro-internal` (example "automerge_x100") due to 3 previous errors
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `bench_utils`
[INFO] [stdout]  --> benches/draw.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bench_utils::draw::{gen_draw_actions, DrawAction};
[INFO] [stdout]   |     ^^^^^^^^^^^ use of undeclared crate or module `bench_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `loro-internal` (bench "draw") due to 2 previous errors
[INFO] [stdout] warning: method `get_children_recursively` is never used
[INFO] [stdout]    --> src/diff_calc/tree.rs:362:8
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub(crate) trait TreeDeletedSetTrait {
[INFO] [stdout]     |                  ------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 362 |     fn get_children_recursively(&self, target: TreeID) -> Vec<TreeID> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_lamport_from_counter` is never used
[INFO] [stdout]   --> src/dag.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) trait DagNode: HasLamport + HasId + HasLength + Debug + Sliceable {
[INFO] [stdout]    |                  ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn get_lamport_from_counter(&self, c: Counter) -> Lamport {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a27f21ac45077ec5b92d238bdb45d127919ef31f04ca177736c575a5e87026f5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a27f21ac45077ec5b92d238bdb45d127919ef31f04ca177736c575a5e87026f5", kill_on_drop: false }`
[INFO] [stdout] a27f21ac45077ec5b92d238bdb45d127919ef31f04ca177736c575a5e87026f5
[INFO] checking loro-internal-0.2.2 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate loro-internal 0.2.2 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate loro-internal 0.2.2 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate loro-internal 0.2.2
[INFO] finished tweaking crates.io crate loro-internal 0.2.2
[INFO] tweaked toml for crates.io crate loro-internal 0.2.2 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate crates.io crate loro-internal 0.2.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3a8622f01e120d1da9c807e6949a65ab85ed47775ee5fce0119ff104a310a9e5
[INFO] running `Command { std: "docker" "start" "-a" "3a8622f01e120d1da9c807e6949a65ab85ed47775ee5fce0119ff104a310a9e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3a8622f01e120d1da9c807e6949a65ab85ed47775ee5fce0119ff104a310a9e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3a8622f01e120d1da9c807e6949a65ab85ed47775ee5fce0119ff104a310a9e5", kill_on_drop: false }`
[INFO] [stdout] 3a8622f01e120d1da9c807e6949a65ab85ed47775ee5fce0119ff104a310a9e5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5e48438b611c7beaeb9e4bce8df26c62679cdf148254d2261551ff2b5b780d31
[INFO] running `Command { std: "docker" "start" "-a" "5e48438b611c7beaeb9e4bce8df26c62679cdf148254d2261551ff2b5b780d31", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]    Compiling quote v1.0.29
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling serde v1.0.171
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling proc-macro2 v1.0.67
[INFO] [stderr]    Compiling semver v1.0.16
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]    Compiling num-bigint v0.4.3
[INFO] [stderr]    Compiling crossbeam-utils v0.8.14
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]     Checking spin v0.9.4
[INFO] [stderr]    Compiling parking_lot_core v0.9.6
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.13
[INFO] [stderr]    Compiling Inflector v0.11.4
[INFO] [stderr]     Checking hash32 v0.2.1
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling thiserror v1.0.43
[INFO] [stderr]    Compiling serde_json v1.0.91
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking arref v0.1.0
[INFO] [stderr]     Checking ryu v1.0.12
[INFO] [stderr]     Checking siphasher v0.3.10
[INFO] [stderr]     Checking itoa v1.0.5
[INFO] [stderr]     Checking crdt-list v0.4.0
[INFO] [stderr]     Checking miniz_oxide v0.6.2
[INFO] [stderr]     Checking itertools v0.11.0
[INFO] [stderr]     Checking phf_shared v0.10.0
[INFO] [stderr]    Compiling backtrace v0.3.67
[INFO] [stderr]     Checking debug-log v0.2.2
[INFO] [stderr]    Compiling sys-info v0.9.1
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]     Checking new_debug_unreachable v1.0.4
[INFO] [stderr]     Checking cobs v0.2.3
[INFO] [stderr]     Checking precomputed-hash v0.1.1
[INFO] [stderr]    Compiling syn v2.0.25
[INFO] [stderr]     Checking bumpalo v3.11.1
[INFO] [stderr]    Compiling rayon-core v1.10.1
[INFO] [stderr]     Checking append-only-bytes v0.1.12
[INFO] [stderr]     Checking gimli v0.27.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.6
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling im v15.1.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.2
[INFO] [stderr]    Compiling heapless v0.7.16
[INFO] [stderr]     Checking object v0.30.2
[INFO] [stderr]     Checking os_str_bytes v6.4.1
[INFO] [stderr]     Checking rustc-demangle v0.1.21
[INFO] [stderr]     Checking getrandom v0.2.10
[INFO] [stderr]     Checking num_cpus v1.15.0
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking half v1.8.2
[INFO] [stderr]     Checking ciborium-io v0.2.0
[INFO] [stderr]     Checking fastrand v1.8.0
[INFO] [stderr]     Checking regex-syntax v0.6.28
[INFO] [stderr]     Checking plotters-backend v0.3.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking num-complex v0.4.2
[INFO] [stderr]     Checking ciborium-ll v0.2.0
[INFO] [stderr]     Checking plotters-svg v0.3.3
[INFO] [stderr]     Checking tempfile v3.3.0
[INFO] [stderr]     Checking rand_xoshiro v0.6.0
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking wait-timeout v0.2.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking tracing-core v0.1.30
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking bytecount v0.6.3
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]     Checking bitmaps v2.1.0
[INFO] [stderr]     Checking textwrap v0.16.0
[INFO] [stderr]     Checking loro-thunderdome v0.6.2
[INFO] [stderr]     Checking bytes v1.4.0
[INFO] [stderr]     Checking papergrid v0.7.1
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking rayon v1.6.1
[INFO] [stderr]     Checking rusty-fork v0.3.0
[INFO] [stderr]     Checking walkdir v2.3.2
[INFO] [stderr]     Checking clap v3.2.23
[INFO] [stderr]     Checking mintex v0.1.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking plotters v0.3.4
[INFO] [stderr]     Checking rand_xorshift v0.3.0
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking quick-error v2.0.1
[INFO] [stderr]     Checking thousands v0.2.0
[INFO] [stderr]     Checking termcolor v1.2.0
[INFO] [stderr]     Checking flate2 v1.0.25
[INFO] [stderr]     Checking sized-chunks v0.6.5
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking regex v1.7.1
[INFO] [stderr]     Checking proptest v1.0.0
[INFO] [stderr]     Checking addr2line v0.19.0
[INFO] [stderr]     Checking num v0.4.0
[INFO] [stderr]     Checking color-backtrace v0.5.1
[INFO] [stderr]    Compiling darling_core v0.20.3
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling serde_derive v1.0.171
[INFO] [stderr]    Compiling thiserror-impl v1.0.43
[INFO] [stderr]    Compiling derive_arbitrary v1.3.1
[INFO] [stderr]    Compiling enum-as-inner v0.6.0
[INFO] [stderr]    Compiling ouroboros_macro v0.15.6
[INFO] [stderr]    Compiling enum-as-inner v0.5.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.23
[INFO] [stderr]    Compiling enum_dispatch v0.3.11
[INFO] [stderr]    Compiling tabled_derive v0.5.0
[INFO] [stderr]    Compiling ctor v0.1.26
[INFO] [stderr]    Compiling proptest-derive v0.3.0
[INFO] [stderr]     Checking arbitrary v1.3.0
[INFO] [stderr]    Compiling darling_macro v0.20.3
[INFO] [stderr]     Checking tabled v0.10.0
[INFO] [stderr]     Checking arbtest v0.2.0
[INFO] [stderr]     Checking ouroboros v0.15.6
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]    Compiling darling v0.20.3
[INFO] [stderr]    Compiling serde_columnar_derive v0.3.2
[INFO] [stderr]     Checking smallvec v1.10.0
[INFO] [stderr]     Checking ciborium v0.2.0
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking string_cache v0.8.7
[INFO] [stderr]     Checking loro-rle v0.1.0
[INFO] [stderr]     Checking postcard v1.0.2
[INFO] [stderr]     Checking generic-btree v0.8.2
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking dhat v0.3.2
[INFO] [stderr]     Checking serde_columnar v0.3.3
[INFO] [stderr]     Checking criterion v0.4.0
[INFO] [stderr]     Checking loro-common v0.1.0
[INFO] [stderr]     Checking loro-preload v0.1.0
[INFO] [stderr]     Checking loro-internal v0.2.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/arena/str_arena.rs:53:36
[INFO] [stdout]    |
[INFO] [stdout] 53 |                 self._alloc(&input[last_save_index..byte_index], utf16, unicode_len);
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/arena/str_arena.rs:61:32
[INFO] [stdout]    |
[INFO] [stdout] 61 |             self._alloc(&input[last_save_index..], utf16, unicode_len);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/arena/str_arena.rs:91:26
[INFO] [stdout]    |
[INFO] [stdout] 91 |         self.bytes.slice(start..end)
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/arena/str_arena.rs:98:60
[INFO] [stdout]    |
[INFO] [stdout] 98 |         unsafe { std::str::from_utf8_unchecked(&self.bytes[start..end]) }
[INFO] [stdout]    |                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:145:59
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let s = unsafe { std::str::from_utf8_unchecked(&bytes[index.bytes as usize..]) };
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena.rs:116:57
[INFO] [stdout]     |
[INFO] [stdout] 116 | ...                   slice: SliceRange::from(range.start as u32..range.end as u32),
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena.rs:130:57
[INFO] [stdout]     |
[INFO] [stdout] 130 | ...                   slice: SliceRange::from(slice.start as u32..slice.end as u32),
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/arena.rs:252:32
[INFO] [stdout]     |
[INFO] [stdout] 252 |         (text_lock.slice_bytes(start..), unicode_start)
[INFO] [stdout]     |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena.rs:423:57
[INFO] [stdout]     |
[INFO] [stdout] 423 | ...                   slice: SliceRange::from(range.start as u32..range.end as u32),
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena.rs:532:5
[INFO] [stdout]     |
[INFO] [stdout] 532 |     start..values_lock.len()
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/diff_calc.rs:137:49
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 for mut op in &change.ops.vec()[iter_start..] {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/diff_calc.rs:609:49
[INFO] [stdout]     |
[INFO] [stdout] 609 |                         RichtextChunk::new_text(*unicode_start..*unicode_start + *len),
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/diff_calc.rs:678:55
[INFO] [stdout]     |
[INFO] [stdout] 678 | ...                   .slice_by_unicode(text.start as usize..text.end as usize),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/loro.rs:673:16
[INFO] [stdout]     |
[INFO] [stdout] 673 |     Ok((&input[1..], mode))
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/oplog/dag.rs:176:29
[INFO] [stdout]     |
[INFO] [stdout] 176 |         for id in frontiers[1..].iter() {
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/oplog/dag.rs:211:29
[INFO] [stdout]     |
[INFO] [stdout] 211 |         for id in frontiers[1..].iter() {
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/oplog/pending_changes.rs:140:44
[INFO] [stdout]     |
[INFO] [stdout] 140 |             for (cnt, _) in tree.range_mut(0..=id.counter) {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/oplog.rs:441:49
[INFO] [stdout]     |
[INFO] [stdout] 441 |                     for change in &peer_changes[result.merged_index..] {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/oplog.rs:519:29
[INFO] [stdout]     |
[INFO] [stdout] 519 | ...                   slice.0.start as usize..slice.0.end as usize,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/oplog.rs:533:49
[INFO] [stdout]     |
[INFO] [stdout] 533 | ...                   .get_values(slice.0.start as usize..slice.0.end as usize),
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/oplog.rs:689:36
[INFO] [stdout]     |
[INFO] [stdout] 689 |             for change in &changes[result.merged_index..changes.len()] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:231:21
[INFO] [stdout]     |
[INFO] [stdout] 231 |             let q = start..end;
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:242:21
[INFO] [stdout]     |
[INFO] [stdout] 242 |             let q = start..end;
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:308:34
[INFO] [stdout]     |
[INFO] [stdout] 308 |                         for i in slices.0.start..slices.0.end {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:324:39
[INFO] [stdout]     |
[INFO] [stdout] 324 |                     self.delete_range(index..index + len);
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:345:42
[INFO] [stdout]     |
[INFO] [stdout] 345 | ...                   for i in slices.0.start..slices.0.end {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:361:47
[INFO] [stdout]     |
[INFO] [stdout] 361 | ...                   self.delete_range(index..index + len);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:401:39
[INFO] [stdout]     |
[INFO] [stdout] 401 |                     self.delete_range(del.pos as usize..del.pos as usize + del.signed_len as usize);
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:423:39
[INFO] [stdout]     |
[INFO] [stdout] 423 |                     self.delete_range(index..index + len);
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:212:37
[INFO] [stdout]     |
[INFO] [stdout] 212 | ...                   start_entity_index..entity_index + 1,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:304:37
[INFO] [stdout]     |
[INFO] [stdout] 304 | ...                   *start_pos..entity_index + 1,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:377:25
[INFO] [stdout]     |
[INFO] [stdout] 377 |                         *start as usize..*end as usize,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:562:26
[INFO] [stdout]     |
[INFO] [stdout] 562 |                 for _ in 0..len {
[INFO] [stdout]     |                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:564:52
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     let text = arena.slice_by_utf8(range.start..range.start + range.len);
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:568:26
[INFO] [stdout]     |
[INFO] [stdout] 568 |                 for _ in 0..len {
[INFO] [stdout]     |                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:684:43
[INFO] [stdout]     |
[INFO] [stdout] 684 |                     .push((style.clone(), start_pos..self.entity_index + 1));
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/change.rs:150:26
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 for i in start_index..self.ops.len() {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/list/list_op.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         self.start()..self.end()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/fugue_span.rs:103:43
[INFO] [stdout]     |
[INFO] [stdout] 103 |             _ => RichtextChunkValue::Text(self.start..self.end),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:188:39
[INFO] [stdout]     |
[INFO] [stdout] 188 |                     self.bytes.slice_(end_byte..);
[INFO] [stdout]     |                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:196:55
[INFO] [stdout]     |
[INFO] [stdout] 196 |                     let next = self.bytes.slice_clone(end_byte..);
[INFO] [stdout]     |                                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:226:28
[INFO] [stdout]     |
[INFO] [stdout] 226 |                     return 0..self.utf16_len as usize;
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:248:17
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 start..end
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:284:47
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 bytes: self.bytes.slice_clone(start..end),
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:304:47
[INFO] [stdout]     |
[INFO] [stdout] 304 |                 bytes: self.bytes.slice_clone(byte_offset..),
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1499:42
[INFO] [stdout]      |
[INFO] [stdout] 1499 |         for span in self.tree.iter_range(start..end) {
[INFO] [stdout]      |                                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1510:67
[INFO] [stdout]      |
[INFO] [stdout] 1510 |                     let event_len = s.entity_range_to_event_range(start..end).len();
[INFO] [stdout]      |                                                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1555:34
[INFO] [stdout]      |
[INFO] [stdout] 1555 |         self.style_ranges.delete(pos..pos + len);
[INFO] [stdout]      |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1556:21
[INFO] [stdout]      |
[INFO] [stdout] 1556 |         let range = pos..pos + len;
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1609:23
[INFO] [stdout]      |
[INFO] [stdout] 1609 |             .annotate(range.start..range.end + 2, style);
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/container/richtext/style_range_map.rs:92:21
[INFO] [stdout]    |
[INFO] [stdout] 92 |             .update(range.start.cursor..range.end.cursor, &mut |x| {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:204:25
[INFO] [stdout]     |
[INFO] [stdout] 204 |             let range = index..index + len;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:230:25
[INFO] [stdout]     |
[INFO] [stdout] 230 |         self.tree.drain(start..end);
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/container/richtext/tracker/crdt_rope.rs:92:50
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 for iter in self.tree.iter_range(start.cursor..) {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:247:53
[INFO] [stdout]     |
[INFO] [stdout] 247 |                 let (a, b) = elem.update_with_split(start.offset..start.offset + len, |elem| {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:265:26
[INFO] [stdout]     |
[INFO] [stdout] 265 |         self.tree.update(start..end.cursor(), &mut |elem| {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:302:21
[INFO] [stdout]     |
[INFO] [stdout] 302 |                     (start as usize).min(elem.rle_len())..(end as usize).min(elem.rle_len()),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VersionVector`, `event::Diff`
[INFO] [stdout]   --> src/container.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 | use crate::{event::Diff, VersionVector};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::oplog::OpLog`
[INFO] [stdout]   --> src/container.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 | use super::oplog::OpLog;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/iter.rs:326:44
[INFO] [stdout]     |
[INFO] [stdout] 326 |         for (key, succ) in self.succ.range(node.id_start()..node.id_end()) {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/iter.rs:350:20
[INFO] [stdout]     |
[INFO] [stdout] 350 |             slice: slice_from..slice_end,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     new_line!();
[INFO] [stdout]    |     ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |         new_line!();
[INFO] [stdout]    |         ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |         new_line!();
[INFO] [stdout]    |         ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |         new_line!();
[INFO] [stdout]    |         ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |         new_line!();
[INFO] [stdout]    |         ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |             new_line!();
[INFO] [stdout]    |             ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag.rs:542:36
[INFO] [stdout]     |
[INFO] [stdout] 542 |             for node in node.drain(1..node.len()) {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_enhanced.rs:584:50
[INFO] [stdout]     |
[INFO] [stdout] 584 | ...                   let s = &str[str_index..str_index + insert_len];
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_enhanced.rs:631:40
[INFO] [stdout]     |
[INFO] [stdout] 631 |             let mut deps: Frontiers = (0..deps_len)
[INFO] [stdout]     |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:103:18
[INFO] [stdout]     |
[INFO] [stdout] 103 |         for _ in 0..change.op_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:122:72
[INFO] [stdout]     |
[INFO] [stdout] 122 | ...                   InnerContent::List(InnerListOp::new_insert(start..start + 1, pos)),
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:156:33
[INFO] [stdout]     |
[INFO] [stdout] 156 | ...                   start as u32..start as u32 + (len as u32),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:227:18
[INFO] [stdout]     |
[INFO] [stdout] 227 |         for _ in 0..deps_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:902:45
[INFO] [stdout]     |
[INFO] [stdout] 902 | ...                   .get_values(slice.0.start as usize..slice.0.end as usize);
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/encoding.rs:123:26
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let decoded = &input[1..];
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:314:14
[INFO] [stdout]     |
[INFO] [stdout] 314 |         Self(UNKNOWN_START..UNKNOWN_START + size)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:319:9
[INFO] [stdout]     |
[INFO] [stdout] 319 |         self.0.start as usize..self.0.end as usize
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:340:24
[INFO] [stdout]     |
[INFO] [stdout] 340 |             SliceRange(self.0.start + from as u32..self.0.start + to as u32)
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:367:20
[INFO] [stdout]     |
[INFO] [stdout] 367 |         SliceRange(start..end)
[INFO] [stdout]     |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:409:73
[INFO] [stdout]     |
[INFO] [stdout] 409 |                 Cow::Borrowed(x) => ListSlice::RawData(Cow::Borrowed(&x[from..to])),
[INFO] [stdout]     |                                                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:410:66
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 Cow::Owned(x) => ListSlice::RawData(Cow::Owned(x[from..to].into())),
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/utils/bitmap.rs:68:29
[INFO] [stdout]    |
[INFO] [stdout] 68 |             .flat_map(|&v| (0..8).map(move |i| (v & (1 << i)) != 0))
[INFO] [stdout]    |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/utils/string_slice.rs:167:47
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 let mut other = s.slice_clone(length..);
[INFO] [stdout]     |                                               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/value.rs:169:41
[INFO] [stdout]     |
[INFO] [stdout] 169 | ...                   s.drain(index..index + len);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/value.rs:196:47
[INFO] [stdout]     |
[INFO] [stdout] 196 | ...                   seq.drain(index..index + len);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/arena/str_arena.rs:53:36
[INFO] [stdout]    |
[INFO] [stdout] 53 |                 self._alloc(&input[last_save_index..byte_index], utf16, unicode_len);
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/arena/str_arena.rs:61:32
[INFO] [stdout]    |
[INFO] [stdout] 61 |             self._alloc(&input[last_save_index..], utf16, unicode_len);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/arena/str_arena.rs:91:26
[INFO] [stdout]    |
[INFO] [stdout] 91 |         self.bytes.slice(start..end)
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/arena/str_arena.rs:98:60
[INFO] [stdout]    |
[INFO] [stdout] 98 |         unsafe { std::str::from_utf8_unchecked(&self.bytes[start..end]) }
[INFO] [stdout]    |                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:145:59
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let s = unsafe { std::str::from_utf8_unchecked(&bytes[index.bytes as usize..]) };
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:160:44
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let slice = arena.slice_by_unicode(0..5);
[INFO] [stdout]     |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:163:44
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let slice = arena.slice_by_unicode(5..10);
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:174:44
[INFO] [stdout]     |
[INFO] [stdout] 174 |         let slice = arena.slice_by_unicode(0..4);
[INFO] [stdout]     |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:177:44
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let slice = arena.slice_by_unicode(4..8);
[INFO] [stdout]     |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:180:44
[INFO] [stdout]     |
[INFO] [stdout] 180 |         let slice = arena.slice_by_unicode(8..10);
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:183:44
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let slice = arena.slice_by_unicode(10..12);
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:186:44
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let slice = arena.slice_by_unicode(12..14);
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:198:44
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let slice = arena.slice_by_unicode(110..120);
[INFO] [stdout]     |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena/str_arena.rs:200:44
[INFO] [stdout]     |
[INFO] [stdout] 200 |         let slice = arena.slice_by_unicode(111..121);
[INFO] [stdout]     |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena.rs:116:57
[INFO] [stdout]     |
[INFO] [stdout] 116 | ...                   slice: SliceRange::from(range.start as u32..range.end as u32),
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena.rs:130:57
[INFO] [stdout]     |
[INFO] [stdout] 130 | ...                   slice: SliceRange::from(slice.start as u32..slice.end as u32),
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/arena.rs:252:32
[INFO] [stdout]     |
[INFO] [stdout] 252 |         (text_lock.slice_bytes(start..), unicode_start)
[INFO] [stdout]     |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena.rs:423:57
[INFO] [stdout]     |
[INFO] [stdout] 423 | ...                   slice: SliceRange::from(range.start as u32..range.end as u32),
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/arena.rs:532:5
[INFO] [stdout]     |
[INFO] [stdout] 532 |     start..values_lock.len()
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/diff_calc.rs:137:49
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 for mut op in &change.ops.vec()[iter_start..] {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/diff_calc.rs:609:49
[INFO] [stdout]     |
[INFO] [stdout] 609 |                         RichtextChunk::new_text(*unicode_start..*unicode_start + *len),
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/diff_calc.rs:678:55
[INFO] [stdout]     |
[INFO] [stdout] 678 | ...                   .slice_by_unicode(text.start as usize..text.end as usize),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/handler.rs:1373:18
[INFO] [stdout]      |
[INFO] [stdout] 1373 |         for i in 0..100 {
[INFO] [stdout]      |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/loro.rs:673:16
[INFO] [stdout]     |
[INFO] [stdout] 673 |     Ok((&input[1..], mode))
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/loro.rs:697:18
[INFO] [stdout]     |
[INFO] [stdout] 697 |         for i in 0..10 {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/oplog/dag.rs:176:29
[INFO] [stdout]     |
[INFO] [stdout] 176 |         for id in frontiers[1..].iter() {
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/oplog/dag.rs:211:29
[INFO] [stdout]     |
[INFO] [stdout] 211 |         for id in frontiers[1..].iter() {
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/oplog/pending_changes.rs:140:44
[INFO] [stdout]     |
[INFO] [stdout] 140 |             for (cnt, _) in tree.range_mut(0..=id.counter) {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/oplog.rs:441:49
[INFO] [stdout]     |
[INFO] [stdout] 441 |                     for change in &peer_changes[result.merged_index..] {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/oplog.rs:519:29
[INFO] [stdout]     |
[INFO] [stdout] 519 | ...                   slice.0.start as usize..slice.0.end as usize,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/oplog.rs:533:49
[INFO] [stdout]     |
[INFO] [stdout] 533 | ...                   .get_values(slice.0.start as usize..slice.0.end as usize),
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/oplog.rs:689:36
[INFO] [stdout]     |
[INFO] [stdout] 689 |             for change in &changes[result.merged_index..changes.len()] {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:231:21
[INFO] [stdout]     |
[INFO] [stdout] 231 |             let q = start..end;
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:242:21
[INFO] [stdout]     |
[INFO] [stdout] 242 |             let q = start..end;
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:308:34
[INFO] [stdout]     |
[INFO] [stdout] 308 |                         for i in slices.0.start..slices.0.end {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:324:39
[INFO] [stdout]     |
[INFO] [stdout] 324 |                     self.delete_range(index..index + len);
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:345:42
[INFO] [stdout]     |
[INFO] [stdout] 345 | ...                   for i in slices.0.start..slices.0.end {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:361:47
[INFO] [stdout]     |
[INFO] [stdout] 361 | ...                   self.delete_range(index..index + len);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:401:39
[INFO] [stdout]     |
[INFO] [stdout] 401 |                     self.delete_range(del.pos as usize..del.pos as usize + del.signed_len as usize);
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/list_state.rs:423:39
[INFO] [stdout]     |
[INFO] [stdout] 423 |                     self.delete_range(index..index + len);
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:212:37
[INFO] [stdout]     |
[INFO] [stdout] 212 | ...                   start_entity_index..entity_index + 1,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:304:37
[INFO] [stdout]     |
[INFO] [stdout] 304 | ...                   *start_pos..entity_index + 1,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:377:25
[INFO] [stdout]     |
[INFO] [stdout] 377 |                         *start as usize..*end as usize,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:562:26
[INFO] [stdout]     |
[INFO] [stdout] 562 |                 for _ in 0..len {
[INFO] [stdout]     |                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:564:52
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     let text = arena.slice_by_utf8(range.start..range.start + range.len);
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:568:26
[INFO] [stdout]     |
[INFO] [stdout] 568 |                 for _ in 0..len {
[INFO] [stdout]     |                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/state/richtext_state.rs:684:43
[INFO] [stdout]     |
[INFO] [stdout] 684 |                     .push((style.clone(), start_pos..self.entity_index + 1));
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/change.rs:150:26
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 for i in start_index..self.ops.len() {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/list/list_op.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         self.start()..self.end()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/fugue_span.rs:103:43
[INFO] [stdout]     |
[INFO] [stdout] 103 |             _ => RichtextChunkValue::Text(self.start..self.end),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:188:39
[INFO] [stdout]     |
[INFO] [stdout] 188 |                     self.bytes.slice_(end_byte..);
[INFO] [stdout]     |                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:196:55
[INFO] [stdout]     |
[INFO] [stdout] 196 |                     let next = self.bytes.slice_clone(end_byte..);
[INFO] [stdout]     |                                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:226:28
[INFO] [stdout]     |
[INFO] [stdout] 226 |                     return 0..self.utf16_len as usize;
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:248:17
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 start..end
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:284:47
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 bytes: self.bytes.slice_clone(start..end),
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/container/richtext/richtext_state.rs:304:47
[INFO] [stdout]     |
[INFO] [stdout] 304 |                 bytes: self.bytes.slice_clone(byte_offset..),
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1499:42
[INFO] [stdout]      |
[INFO] [stdout] 1499 |         for span in self.tree.iter_range(start..end) {
[INFO] [stdout]      |                                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1510:67
[INFO] [stdout]      |
[INFO] [stdout] 1510 |                     let event_len = s.entity_range_to_event_range(start..end).len();
[INFO] [stdout]      |                                                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1555:34
[INFO] [stdout]      |
[INFO] [stdout] 1555 |         self.style_ranges.delete(pos..pos + len);
[INFO] [stdout]      |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1556:21
[INFO] [stdout]      |
[INFO] [stdout] 1556 |         let range = pos..pos + len;
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1609:23
[INFO] [stdout]      |
[INFO] [stdout] 1609 |             .annotate(range.start..range.end + 2, style);
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1758:45
[INFO] [stdout]      |
[INFO] [stdout] 1758 |                 let text = self.bytes.slice(start..);
[INFO] [stdout]      |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1784:47
[INFO] [stdout]      |
[INFO] [stdout] 1784 |             self.state.mark_with_entity_index(start..end, style);
[INFO] [stdout]      |                                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1828:22
[INFO] [stdout]      |
[INFO] [stdout] 1828 |         wrapper.mark(0..5, bold(0));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1843:22
[INFO] [stdout]      |
[INFO] [stdout] 1843 |         wrapper.mark(2..7, link(1));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1933:22
[INFO] [stdout]      |
[INFO] [stdout] 1933 |         wrapper.mark(0..5, bold(0));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1955:22
[INFO] [stdout]      |
[INFO] [stdout] 1955 |         wrapper.mark(0..5, link(0));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:1992:22
[INFO] [stdout]      |
[INFO] [stdout] 1992 |         wrapper.mark(0..5, bold(0));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:2012:22
[INFO] [stdout]      |
[INFO] [stdout] 2012 |         wrapper.mark(0..5, link(0));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:2035:22
[INFO] [stdout]      |
[INFO] [stdout] 2035 |         wrapper.mark(0..12, bold(0));
[INFO] [stdout]      |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:2036:22
[INFO] [stdout]      |
[INFO] [stdout] 2036 |         wrapper.mark(5..12, unbold(1));
[INFO] [stdout]      |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:2100:22
[INFO] [stdout]      |
[INFO] [stdout] 2100 |         wrapper.mark(0..5, link(0));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:2101:22
[INFO] [stdout]      |
[INFO] [stdout] 2101 |         wrapper.mark(0..5, bold(1));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:2127:22
[INFO] [stdout]      |
[INFO] [stdout] 2127 |         wrapper.mark(0..5, comment(0));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:2128:22
[INFO] [stdout]      |
[INFO] [stdout] 2128 |         wrapper.mark(1..6, comment(1));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/container/richtext/richtext_state.rs:2175:22
[INFO] [stdout]      |
[INFO] [stdout] 2175 |         wrapper.mark(0..5, bold(0));
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/container/richtext/style_range_map.rs:92:21
[INFO] [stdout]    |
[INFO] [stdout] 92 |             .update(range.start.cursor..range.end.cursor, &mut |x| {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:204:25
[INFO] [stdout]     |
[INFO] [stdout] 204 |             let range = index..index + len;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:230:25
[INFO] [stdout]     |
[INFO] [stdout] 230 |         self.tree.drain(start..end);
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:332:22
[INFO] [stdout]     |
[INFO] [stdout] 332 |         map.annotate(1..10, new_style(1));
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:337:35
[INFO] [stdout]     |
[INFO] [stdout] 337 |                 assert_eq!(range, 2..11);
[INFO] [stdout]     |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:345:35
[INFO] [stdout]     |
[INFO] [stdout] 345 |                 assert_eq!(range, 2..11);
[INFO] [stdout]     |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:353:35
[INFO] [stdout]     |
[INFO] [stdout] 353 |                 assert_eq!(range, 2..12);
[INFO] [stdout]     |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:362:22
[INFO] [stdout]     |
[INFO] [stdout] 362 |         map.annotate(1..10, new_style(1));
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:364:24
[INFO] [stdout]     |
[INFO] [stdout] 364 |             map.delete(0..2);
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:367:35
[INFO] [stdout]     |
[INFO] [stdout] 367 |                 assert_eq!(range, 0..8);
[INFO] [stdout]     |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:372:24
[INFO] [stdout]     |
[INFO] [stdout] 372 |             map.delete(2..4);
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:374:35
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 assert_eq!(range, 0..6);
[INFO] [stdout]     |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:380:24
[INFO] [stdout]     |
[INFO] [stdout] 380 |             map.delete(6..8);
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/style_range_map.rs:383:35
[INFO] [stdout]     |
[INFO] [stdout] 383 |                 assert_eq!(range, 0..6);
[INFO] [stdout]     |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/container/richtext/tracker/crdt_rope.rs:92:50
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 for iter in self.tree.iter_range(start.cursor..) {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:247:53
[INFO] [stdout]     |
[INFO] [stdout] 247 |                 let (a, b) = elem.update_with_split(start.offset..start.offset + len, |elem| {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:265:26
[INFO] [stdout]     |
[INFO] [stdout] 265 |         self.tree.update(start..end.cursor(), &mut |elem| {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:302:21
[INFO] [stdout]     |
[INFO] [stdout] 302 |                     (start as usize).min(elem.rle_len())..(end as usize).min(elem.rle_len()),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:665:32
[INFO] [stdout]     |
[INFO] [stdout] 665 |         rope.insert(0, span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:667:32
[INFO] [stdout]     |
[INFO] [stdout] 667 |         rope.insert(5, span(1, 0..10), |_| panic!());
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:669:33
[INFO] [stdout]     |
[INFO] [stdout] 669 |         rope.insert(20, span(1, 0..10), |_| panic!());
[INFO] [stdout]     |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:671:18
[INFO] [stdout]     |
[INFO] [stdout] 671 |         for i in 3..30 {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:675:32
[INFO] [stdout]     |
[INFO] [stdout] 675 |                 span(i as u32, i as u32 * 10..(i as u32 + 1) * 10),
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:684:32
[INFO] [stdout]     |
[INFO] [stdout] 684 |         rope.insert(0, span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:685:32
[INFO] [stdout]     |
[INFO] [stdout] 685 |         rope.insert(5, span(1, 10..20), |_| panic!());
[INFO] [stdout]     |                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:703:32
[INFO] [stdout]     |
[INFO] [stdout] 703 |         rope.insert(0, span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:706:37
[INFO] [stdout]     |
[INFO] [stdout] 706 |         rope.insert(5, dead_span(1, 10..20), |_| panic!());
[INFO] [stdout]     |                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:709:33
[INFO] [stdout]     |
[INFO] [stdout] 709 |         rope.insert(10, span(0, 20..30), |_| panic!());
[INFO] [stdout]     |                                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:724:32
[INFO] [stdout]     |
[INFO] [stdout] 724 |         rope.insert(0, span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:725:44
[INFO] [stdout]     |
[INFO] [stdout] 725 |         let fugue = rope.insert(5, span(1, 10..20), |_| panic!()).content;
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:733:32
[INFO] [stdout]     |
[INFO] [stdout] 733 |         rope.insert(0, span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:737:44
[INFO] [stdout]     |
[INFO] [stdout] 737 |         let fugue = rope.insert(6, span(1, 10..20), |_| panic!()).content;
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:740:44
[INFO] [stdout]     |
[INFO] [stdout] 740 |         let fugue = rope.insert(5, span(1, 10..11), |_| panic!()).content;
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:750:36
[INFO] [stdout]     |
[INFO] [stdout] 750 |             rope.insert(0, span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:751:43
[INFO] [stdout]     |
[INFO] [stdout] 751 |             rope.insert(5, future_span(1, 10..20), |_| panic!());
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:752:48
[INFO] [stdout]     |
[INFO] [stdout] 752 |             let fugue = rope.insert(5, span(1, 10..20), |_| panic!()).content;
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:759:36
[INFO] [stdout]     |
[INFO] [stdout] 759 |             rope.insert(0, span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:760:41
[INFO] [stdout]     |
[INFO] [stdout] 760 |             rope.insert(5, dead_span(1, 10..20), |_| panic!());
[INFO] [stdout]     |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:761:48
[INFO] [stdout]     |
[INFO] [stdout] 761 |             let fugue = rope.insert(5, span(1, 10..20), |_| panic!()).content;
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:770:45
[INFO] [stdout]     |
[INFO] [stdout] 770 |         let result = rope.insert(0, span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:800:46
[INFO] [stdout]     |
[INFO] [stdout] 800 |         let result1 = rope.insert(0, span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:801:52
[INFO] [stdout]     |
[INFO] [stdout] 801 |         let result2 = rope.insert(10, dead_span(1, 10..20), |_| panic!());
[INFO] [stdout]     |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:825:63
[INFO] [stdout]     |
[INFO] [stdout] 825 |                 CrdtRopeDelta::Insert(RichtextChunk::new_text(10..13))
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:834:52
[INFO] [stdout]     |
[INFO] [stdout] 834 |         let result = rope.insert(0, future_span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:846:64
[INFO] [stdout]     |
[INFO] [stdout] 846 |             vec![CrdtRopeDelta::Insert(RichtextChunk::new_text(2..10))],
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker/crdt_rope.rs:854:52
[INFO] [stdout]     |
[INFO] [stdout] 854 |         let result = rope.insert(0, future_span(0, 0..10), |_| panic!());
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker.rs:291:60
[INFO] [stdout]     |
[INFO] [stdout] 291 |         t.insert(ID::new(1, 0), 0, RichtextChunk::new_text(0..2));
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker.rs:295:60
[INFO] [stdout]     |
[INFO] [stdout] 295 |         t.insert(ID::new(2, 0), 0, RichtextChunk::new_text(2..4));
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker.rs:305:60
[INFO] [stdout]     |
[INFO] [stdout] 305 |         t.insert(ID::new(1, 0), 0, RichtextChunk::new_text(0..10));
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker.rs:320:60
[INFO] [stdout]     |
[INFO] [stdout] 320 |         t.insert(ID::new(1, 0), 0, RichtextChunk::new_text(0..10));
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/container/richtext/tracker.rs:334:60
[INFO] [stdout]     |
[INFO] [stdout] 334 |         t.insert(ID::new(1, 0), 0, RichtextChunk::new_text(0..10));
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VersionVector`, `event::Diff`
[INFO] [stdout]   --> src/container.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 | use crate::{event::Diff, VersionVector};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::oplog::OpLog`
[INFO] [stdout]   --> src/container.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 | use super::oplog::OpLog;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/iter.rs:326:44
[INFO] [stdout]     |
[INFO] [stdout] 326 |         for (key, succ) in self.succ.range(node.id_start()..node.id_end()) {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/iter.rs:350:20
[INFO] [stdout]     |
[INFO] [stdout] 350 |             slice: slice_from..slice_end,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     new_line!();
[INFO] [stdout]    |     ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |         new_line!();
[INFO] [stdout]    |         ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |         new_line!();
[INFO] [stdout]    |         ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |         new_line!();
[INFO] [stdout]    |         ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |         new_line!();
[INFO] [stdout]    |         ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/dag/mermaid.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |             for _ in 0..indent_level {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |             new_line!();
[INFO] [stdout]    |             ----------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `new_line` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:174:22
[INFO] [stdout]     |
[INFO] [stdout] 174 |             for i in index..node_vec.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:293:41
[INFO] [stdout]     |
[INFO] [stdout] 293 |             let dag_idx = rng.gen_range(0..num);
[INFO] [stdout]     |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:294:45
[INFO] [stdout]     |
[INFO] [stdout] 294 |             let merge_with = (rng.gen_range(1..num - 1) + dag_idx) % num;
[INFO] [stdout]     |                                             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:298:36
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 len: rng.gen_range(1..10),
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:302:40
[INFO] [stdout]     |
[INFO] [stdout] 302 |                 dag_idx: rng.gen_range(0..num),
[INFO] [stdout]     |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:304:36
[INFO] [stdout]     |
[INFO] [stdout] 304 |                 len: rng.gen_range(1..10),
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:323:24
[INFO] [stdout]     |
[INFO] [stdout] 323 |             dag_idx in 0..num,
[INFO] [stdout]     |                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:324:27
[INFO] [stdout]     |
[INFO] [stdout] 324 |             merge_with in 0..num,
[INFO] [stdout]     |                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:325:23
[INFO] [stdout]     |
[INFO] [stdout] 325 |             length in 1..10,
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:326:29
[INFO] [stdout]     |
[INFO] [stdout] 326 |             should_merge in 0..2
[INFO] [stdout]     |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:430:25
[INFO] [stdout]     |
[INFO] [stdout] 430 |         let mut dags = (0..num).map(TestDag::new).collect::<Vec<_>>();
[INFO] [stdout]     |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:431:18
[INFO] [stdout]     |
[INFO] [stdout] 431 |         for _ in 0..100 {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:434:18
[INFO] [stdout]     |
[INFO] [stdout] 434 |         for i in 1..num {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:551:18
[INFO] [stdout]     |
[INFO] [stdout] 551 |         for i in 0..dag_num {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:559:18
[INFO] [stdout]     |
[INFO] [stdout] 559 |         for i in 1..dag_num {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/dag/test.rs:594:35
[INFO] [stdout]     |
[INFO] [stdout] 594 |                 for iter in nodes[j + 1..].iter() {
[INFO] [stdout]     |                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:661:71
[INFO] [stdout]     |
[INFO] [stdout] 661 |             interactions in prop::collection::vec(gen_interaction(5), 0..10 * PROPTEST_FACTOR_10),
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:668:72
[INFO] [stdout]     |
[INFO] [stdout] 668 |             interactions in prop::collection::vec(gen_interaction(10), 0..PROPTEST_FACTOR_10 * PROPTEST_FACTOR_10 + 10),
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:810:83
[INFO] [stdout]     |
[INFO] [stdout] 810 |             before_merged_insertions in prop::collection::vec(gen_interaction(2), 0..100 * PROPTEST_FACTOR_10),
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:811:82
[INFO] [stdout]     |
[INFO] [stdout] 811 |             after_merged_insertions in prop::collection::vec(gen_interaction(2), 0..100 * PROPTEST_FACTOR_10)
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:818:83
[INFO] [stdout]     |
[INFO] [stdout] 818 |             before_merged_insertions in prop::collection::vec(gen_interaction(4), 0..50 * PROPTEST_FACTOR_10),
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:819:82
[INFO] [stdout]     |
[INFO] [stdout] 819 |             after_merged_insertions in prop::collection::vec(gen_interaction(4), 0..50 * PROPTEST_FACTOR_10)
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:826:84
[INFO] [stdout]     |
[INFO] [stdout] 826 |             before_merged_insertions in prop::collection::vec(gen_interaction(10), 0..10 * PROPTEST_FACTOR_10 * PROPTEST_FACTOR_10),
[INFO] [stdout]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:827:83
[INFO] [stdout]     |
[INFO] [stdout] 827 |             after_merged_insertions in prop::collection::vec(gen_interaction(10), 0..10 * PROPTEST_FACTOR_10 * PROPTEST_FACTOR_10)
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:834:84
[INFO] [stdout]     |
[INFO] [stdout] 834 |             before_merged_insertions in prop::collection::vec(gen_interaction(10), 0..30 + PROPTEST_FACTOR_1 * 500),
[INFO] [stdout]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:835:83
[INFO] [stdout]     |
[INFO] [stdout] 835 |             after_merged_insertions in prop::collection::vec(gen_interaction(10), 0..30 + PROPTEST_FACTOR_1 * 500)
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:842:84
[INFO] [stdout]     |
[INFO] [stdout] 842 |             before_merged_insertions in prop::collection::vec(gen_interaction(10), 0..10 * PROPTEST_FACTOR_10 * PROPTEST_FACTOR_10),
[INFO] [stdout]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:843:83
[INFO] [stdout]     |
[INFO] [stdout] 843 |             after_merged_insertions in prop::collection::vec(gen_interaction(10), 0..10 * PROPTEST_FACTOR_10 * PROPTEST_FACTOR_10)
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:850:84
[INFO] [stdout]     |
[INFO] [stdout] 850 |             before_merged_insertions in prop::collection::vec(gen_interaction(15), 0..10 * PROPTEST_FACTOR_10 * PROPTEST_FACTOR_10),
[INFO] [stdout]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:851:83
[INFO] [stdout]     |
[INFO] [stdout] 851 |             after_merged_insertions in prop::collection::vec(gen_interaction(15), 0..10 * PROPTEST_FACTOR_10 * PROPTEST_FACTOR_10)
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:913:18
[INFO] [stdout]     |
[INFO] [stdout] 913 |         for i in 0..dag_num {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:921:24
[INFO] [stdout]     |
[INFO] [stdout] 921 |         for dag_idx in 1..dags.len() {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:928:24
[INFO] [stdout]     |
[INFO] [stdout] 928 |         for dag_idx in 1..dags.len() {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:980:18
[INFO] [stdout]     |
[INFO] [stdout] 980 |         for i in 0..dag_num {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag/test.rs:999:23
[INFO] [stdout]     |
[INFO] [stdout] 999 |         for target in 0..N {
[INFO] [stdout]     |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1000:22
[INFO] [stdout]      |
[INFO] [stdout] 1000 |             for i in N..dags.len() {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1008:25
[INFO] [stdout]      |
[INFO] [stdout] 1008 |         for dag in dags[0..N].iter_mut() {
[INFO] [stdout]      |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1013:23
[INFO] [stdout]      |
[INFO] [stdout] 1013 |         for target in 0..N {
[INFO] [stdout]      |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1014:22
[INFO] [stdout]      |
[INFO] [stdout] 1014 |             for i in N..dags.len() {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1061:18
[INFO] [stdout]      |
[INFO] [stdout] 1061 |         for i in 0..N {
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1076:18
[INFO] [stdout]      |
[INFO] [stdout] 1076 |         for i in dags.len() - 2..dags.len() {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1078:32
[INFO] [stdout]      |
[INFO] [stdout] 1078 |                 for target in (0..dags.len() - 2).step_by(2) {
[INFO] [stdout]      |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1084:32
[INFO] [stdout]      |
[INFO] [stdout] 1084 |                 for target in (1..dags.len() - 2).step_by(2) {
[INFO] [stdout]      |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1123:18
[INFO] [stdout]      |
[INFO] [stdout] 1123 |         for i in 0..dag_num {
[INFO] [stdout]      |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1131:18
[INFO] [stdout]      |
[INFO] [stdout] 1131 |         for i in 1..dag_num {
[INFO] [stdout]      |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1242:71
[INFO] [stdout]      |
[INFO] [stdout] 1242 |             interactions in prop::collection::vec(gen_interaction(2), 0..40 * PROPTEST_FACTOR_10),
[INFO] [stdout]      |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1248:71
[INFO] [stdout]      |
[INFO] [stdout] 1248 |             interactions in prop::collection::vec(gen_interaction(3), 0..40 * PROPTEST_FACTOR_10),
[INFO] [stdout]      |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/dag/test.rs:1254:71
[INFO] [stdout]      |
[INFO] [stdout] 1254 |             interactions in prop::collection::vec(gen_interaction(5), 0..40 * PROPTEST_FACTOR_10),
[INFO] [stdout]      |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/dag.rs:542:36
[INFO] [stdout]     |
[INFO] [stdout] 542 |             for node in node.drain(1..node.len()) {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_enhanced.rs:584:50
[INFO] [stdout]     |
[INFO] [stdout] 584 | ...                   let s = &str[str_index..str_index + insert_len];
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_enhanced.rs:631:40
[INFO] [stdout]     |
[INFO] [stdout] 631 |             let mut deps: Frontiers = (0..deps_len)
[INFO] [stdout]     |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:103:18
[INFO] [stdout]     |
[INFO] [stdout] 103 |         for _ in 0..change.op_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:122:72
[INFO] [stdout]     |
[INFO] [stdout] 122 | ...                   InnerContent::List(InnerListOp::new_insert(start..start + 1, pos)),
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:156:33
[INFO] [stdout]     |
[INFO] [stdout] 156 | ...                   start as u32..start as u32 + (len as u32),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:227:18
[INFO] [stdout]     |
[INFO] [stdout] 227 |         for _ in 0..deps_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/encoding/encode_snapshot.rs:902:45
[INFO] [stdout]     |
[INFO] [stdout] 902 | ...                   .get_values(slice.0.start as usize..slice.0.end as usize);
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/encoding.rs:123:26
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let decoded = &input[1..];
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:314:14
[INFO] [stdout]     |
[INFO] [stdout] 314 |         Self(UNKNOWN_START..UNKNOWN_START + size)
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:319:9
[INFO] [stdout]     |
[INFO] [stdout] 319 |         self.0.start as usize..self.0.end as usize
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:340:24
[INFO] [stdout]     |
[INFO] [stdout] 340 |             SliceRange(self.0.start + from as u32..self.0.start + to as u32)
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:367:20
[INFO] [stdout]     |
[INFO] [stdout] 367 |         SliceRange(start..end)
[INFO] [stdout]     |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:409:73
[INFO] [stdout]     |
[INFO] [stdout] 409 |                 Cow::Borrowed(x) => ListSlice::RawData(Cow::Borrowed(&x[from..to])),
[INFO] [stdout]     |                                                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/op.rs:410:66
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 Cow::Owned(x) => ListSlice::RawData(Cow::Owned(x[from..to].into())),
[INFO] [stdout]     |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/utils/bitmap.rs:68:29
[INFO] [stdout]    |
[INFO] [stdout] 68 |             .flat_map(|&v| (0..8).map(move |i| (v & (1 << i)) != 0))
[INFO] [stdout]    |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/utils/string_slice.rs:167:47
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 let mut other = s.slice_clone(length..);
[INFO] [stdout]     |                                               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/value.rs:169:41
[INFO] [stdout]     |
[INFO] [stdout] 169 | ...                   s.drain(index..index + len);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/value.rs:196:47
[INFO] [stdout]     |
[INFO] [stdout] 196 | ...                   seq.drain(index..index + len);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_children_recursively` is never used
[INFO] [stdout]    --> src/diff_calc/tree.rs:362:8
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub(crate) trait TreeDeletedSetTrait {
[INFO] [stdout]     |                  ------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 362 |     fn get_children_recursively(&self, target: TreeID) -> Vec<TreeID> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_lamport_from_counter` is never used
[INFO] [stdout]   --> src/dag.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) trait DagNode: HasLamport + HasId + HasLength + Debug + Sliceable {
[INFO] [stdout]    |                  ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn get_lamport_from_counter(&self, c: Counter) -> Lamport {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `frontier` is never used
[INFO] [stdout]   --> src/dag.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub(crate) trait Dag {
[INFO] [stdout]    |                  --- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 54 |     fn frontier(&self) -> &[ID];
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_vv`, `iter`, `iter_with_vv`, and `mermaid` are never used
[INFO] [stdout]   --> src/dag.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) trait DagUtils: Dag {
[INFO] [stdout]    |                  -------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn get_vv(&self, id: ID) -> VersionVector;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn iter(&self) -> DagIterator<'_, Self::Node>
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     fn iter_with_vv(&self) -> DagIteratorVV<'_, Self::Node>
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn mermaid(&self) -> String
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_version_vector` is never used
[INFO] [stdout]    --> src/dag.rs:191:4
[INFO] [stdout]     |
[INFO] [stdout] 191 | fn get_version_vector<'a, Get, D>(get: &'a Get, id: ID) -> VersionVector
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_dag_with_vv` is never used
[INFO] [stdout]   --> src/dag/iter.rs:26:15
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub(crate) fn iter_dag_with_vv<T, D: Dag<Node = T>>(dag: &D) -> DagIteratorVV<'_, T> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_dag` is never used
[INFO] [stdout]   --> src/dag/iter.rs:34:15
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub(crate) fn iter_dag<T>(dag: &dyn Dag<Node = T>) -> DagIterator<'_, T> {
[INFO] [stdout]    |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BreakPoints` is never constructed
[INFO] [stdout]  --> src/dag/mermaid.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct BreakPoints {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Output` is never constructed
[INFO] [stdout]   --> src/dag/mermaid.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct Output {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_str` is never used
[INFO] [stdout]   --> src/dag/mermaid.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn to_str(output: Output) -> String {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `break_points_to_output` is never used
[INFO] [stdout]   --> src/dag/mermaid.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn break_points_to_output(input: BreakPoints) -> Output {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_dag_break_points` is never used
[INFO] [stdout]    --> src/dag/mermaid.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn get_dag_break_points<T: DagNode>(dag: &impl Dag<Node = T>) -> BreakPoints {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dag_to_mermaid` is never used
[INFO] [stdout]    --> src/dag/mermaid.rs:143:15
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub(crate) fn dag_to_mermaid<T: DagNode>(dag: &impl Dag<Node = T>) -> String {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]   --> src/utils/bitmap.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl BitMap {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get(&self, index: usize) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeBounds` trait bound in public function
[INFO] [stdout]    --> src/arena.rs:335:48
[INFO] [stdout]     |
[INFO] [stdout] 335 |     pub fn slice_by_unicode(&self, range: impl RangeBounds<usize>) -> BytesSlice {
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-bounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeBounds` trait bound in public function
[INFO] [stdout]    --> src/arena.rs:340:45
[INFO] [stdout]     |
[INFO] [stdout] 340 |     pub fn slice_by_utf8(&self, range: impl RangeBounds<usize>) -> BytesSlice {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/arena.rs:345:53
[INFO] [stdout]     |
[INFO] [stdout] 345 |     pub fn slice_str_by_unicode_range(&self, range: Range<usize>) -> String {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/arena.rs:354:42
[INFO] [stdout]     |
[INFO] [stdout] 354 |     pub fn with_text_slice(&self, range: Range<usize>, mut f: impl FnMut(&str)) {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/arena.rs:364:37
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn get_values(&self, range: Range<usize>) -> Vec<LoroValue> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public struct field
[INFO] [stdout]    --> src/op.rs:303:27
[INFO] [stdout]     |
[INFO] [stdout] 303 | pub struct SliceRange(pub Range<u32>);
[INFO] [stdout]     |                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]    --> src/op.rs:323:11
[INFO] [stdout]     |
[INFO] [stdout] 323 | impl From<Range<u32>> for SliceRange {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D trait-impl-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/op.rs:324:16
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn from(a: Range<u32>) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors; 102 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `loro-internal` (lib) due to 7 previous errors; 102 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: method `get_children_recursively` is never used
[INFO] [stdout]    --> src/diff_calc/tree.rs:362:8
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub(crate) trait TreeDeletedSetTrait {
[INFO] [stdout]     |                  ------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 362 |     fn get_children_recursively(&self, target: TreeID) -> Vec<TreeID> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_lamport_from_counter` is never used
[INFO] [stdout]   --> src/dag.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) trait DagNode: HasLamport + HasId + HasLength + Debug + Sliceable {
[INFO] [stdout]    |                  ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn get_lamport_from_counter(&self, c: Counter) -> Lamport {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 206 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "5e48438b611c7beaeb9e4bce8df26c62679cdf148254d2261551ff2b5b780d31", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5e48438b611c7beaeb9e4bce8df26c62679cdf148254d2261551ff2b5b780d31", kill_on_drop: false }`
[INFO] [stdout] 5e48438b611c7beaeb9e4bce8df26c62679cdf148254d2261551ff2b5b780d31
